/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package EJB.Business;

import javax.ejb.Remove;
import javax.ejb.Stateful;
import java.util.List;
import Entity.Pedido;
import Entity.Reserva;
import Entity.Plato;
import Entity.Mesa;
import EJB.Entity.*;
import javax.ejb.EJB;

/**
 *
 * @author Aldo
 */
@Stateful
public class GestorDePedidos implements GestorDePedidosLocal {
    
    // Add business logic below. (Right-click in editor and choose
    // "Insert Code > Add Business Method")

    private Pedido pedido;
    private Mesa mesa;
    private List<Plato> platos;
    private @EJB PedidoFacadeLocal pfacade;
    private boolean created;

    public GestorDePedidos(){
        pedido = new Pedido();
        pfacade = new PedidoFacade();
        created = false;
    }

    public void update(){
        if(created)
            pfacade.edit(pedido);
        else{
            pfacade.create(pedido);
            created = true;
        }
    }

    public void asignarMesa(Mesa m){
        pedido.setMesa(m);
    }

    public void asignarReserva(Reserva r){
        pedido.setReserva(r);
    }

    public void agregarPlato(Plato p){
        platos.add(p);
        pedido.setPlatos(platos);
    }

    public Pedido getPedido(){
        return pedido;
    }

    public List<Plato> mostrarPlatos(){
        return platos;
    }

    public Mesa mostrarMesa(){
        return mesa;
    }
    
    @Remove
    public void terminar( ) { }
    
}
